#!/usr/bin/env python
# coding: utf-8

#  有一个列表lst = [1,4,9,16,2,5,10,15]，生成一个新列表，要求新列表元素是lst相邻2项的和


new_list = [lst[i] + lst[i+1] for i in range(len(lst)-1)]


#  随机生成20个[1, 20]的正整数，统计每个数字出现的次数，排序并降序输出次数最多的前三个数字及次数


import random
nums = [random.randint(1,21) for i in range(20)]
counts_nums = {}
for i in nums:
    if i in counts_nums:
        counts_nums[i] += 1
    else:
        counts_nums[i] = 1
max_nums_and_counts = sorted(counts_nums.items(), reverse=True, key=lambda item: item[1])[:3]
print(max_nums_and_counts)


# 随机生成100个产品ID，ID格式如下
#  顺序的数字6位，分隔符点号，10个随机小写英文字符
#  举例，000005.xcbaaduixy

import random
print([("{:0>6}.{}".format(i,''.join(random.choices('abcdefghijklmnopqrstuvwxyz', k=10)))) for i in range(1,101)])
    
# 完成的不错，不过Python语句一般不会过长，对于一些操作，可以换成两行完成
